Mobile call outcome display

ABSTRACT

Embodiments of the invention provide ways to track the status of calls made to mobile devices. An illustrative method includes an originating mobile device receiving data from a mobile access network about an outgoing call, utilizing the data from the mobile access network to determine the outcome of the outgoing call, displaying an indicator of the outgoing call on the originating mobile device, and displaying an indicator of the outcome (connected, no answer, voicemail, busy, etc.) on the originating mobile device.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is related by subject matter to U.S. patent applicationSer. No. 12/060,692 filed Apr. 1, 2008, now pending, entitled MANAGINGOUTGOING VOICEMAIL MESSAGES, herein incorporated by reference.

SUMMARY

The present invention is defined by the claims below, but summarily,embodiments of the present invention provide a system, method, and mediafor, among other things, displaying an indicator of the outcome of acall on either the originating mobile device or the destination mobiledevice. Embodiments of the present invention have several practicalapplications in the technical arts including verifying how a specificcall ended or that a voicemail message was accessed or played.

In a first illustrative aspect, a set of computer-useable instructionsfacilitates a method that includes receiving data from a mobile accessnetwork concerning the outcome of an outgoing call. The mobile deviceutilizes data from the mobile access network to determine the outcome ofthe outgoing call and stores the outcome of the outgoing call. Themobile device accesses the stored outcome of the outgoing call andsimultaneously displays an indicator identifying the outgoing call andan indicator identifying the outcome of the outgoing call.

In a second illustrative aspect, a set of computer-usable instructionsprovides for receiving data that a voicemail message has been left for adestination mobile device. The data may contain a timestamp of when thevoicemail message was left, a reply period for when the user of theoriginating mobile device wants a response from the originating mobiledevice, or a preferred return call type for the type of call response,such as phone call, text messaging, or instant messaging. The voicemailmessage data and requested time period for reply are stored on themobile originating mobile device. When the reply period expires, a checkis done to determine whether the destination mobile device has notresponded to the voicemail message and an indicator is displayed on theoriginating mobile device that a response has not been received.

In a third illustrative aspect, a set of computer-usable instructionsprovides a user interface displaying identifiers of outgoing calls in anoutgoing call list area and identifiers for the outcome of the outgoingcall in a status area.

In a fourth illustrative aspect, a set of computer-usable instructionsprovides for initiating a call from an originating mobile device andconnecting to a mobile destination device. When the originating mobiledevice determines that the call for the destination device is beingprompted to leave a voicemail message, the originating mobile devicerecords the voicemail message and stores it on the mobile originatingdevice for retrieval.

In a fifth illustrative aspect, a set of computer-usable instructionsprovides for receiving data from a mobile access network about anoutgoing call. The received data is utilized to determine the outcome ofthe call. If the outcome of the call ended in a voicemail message, thena receipt message for the call originator is sent when the voicemailmessage is played on the destination mobile device. The receipt messageis correlated with the indicator of the outgoing call and the indicatoridentifying that the voicemail message has been played. Indicators forthe outgoing call, outcome of the outgoing call, and that the voicemailmessage has been played are simultaneously displayed on the mobileoriginating device.

In a sixth illustrative aspect, a set of computer-usable instructionsprovides for receiving an instruction that a voicemail message has beenleft for a destination mobile device. A data-set containing a timestampof when the voicemail message was left, a reply timestamp for when theuser of the originating mobile device desires a response and a preferredreturn call type for the type of call response the user of theoriginating mobile device desires, such as phone call, text messaging,or instant message. The reply timestamp and preferred return call typeis set on the destination mobile device. When the reply timestampexpires, a check is done to determine whether the destination mobiledevice has not responded to the voicemail message with a call typespecified in the preferred return call type. An indicator is displayedon the destination mobile device that has not responded in time, withthe preferred return call type.

In a seventh illustrative aspect, a set of computer-usable instructionprovides for associating a data-set with a voicemail message set by theoriginating mobile device, where the data-set contains a timestamp ofwhen the voicemail message was left, a reply timestamp for when the calloriginator wants a response to the message, and a preferred return calltype for the type of call response the call originator wants in reply,such as a phone call, a text message, an email message or instantmessage. The reply time and the preferred return call type are set bythe mobile originating device, and instructions with informationconcerning the data-set are sent to the destination mobile device. Whenthe reply timestamp expires, a check is done on the originating mobiledevice for a response from the destination mobile device and searchesfor the call type specified in the preferred return call type. Anindicator on the originating mobile device is displayed that thedestination mobile device has not responded in time, with the preferredreturn call type.

In a final illustrative embodiment, a set of computer-usableinstructions provides for receiving a set time period for an originatingmobile device to contact a destination mobile device. The set timeperiod is stored on the originating mobile device, and may be receivedfrom a network or entered manually by the user of the originating mobiledevice. The originating mobile device determines whether contact hasbeen made to the destination mobile device within the set time period.An indicator is displayed to inform the user that the destination mobiledevice has not been contacted by the originating mobile device withinthe set time period parameter.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

Illustrative embodiments of the present invention are described indetail below with reference to the attached drawing figures, which areincorporated by reference herein and wherein:

FIG. 1 depicts an operating environment suitable for practicing anembodiment of the present invention;

FIG. 2 depicts a flowchart that illustrates a method for displaying anindicator of the outcome of a call according to an embodiment of thepresent invention;

FIG. 3 depicts an illustrative screen display, in accordance with anembodiment of the present invention, of a user interface displaying anidentifier of the outgoing call and an identifier for the outcome of thecall;

FIG. 4 depicts an operating environment suitable for practicing anembodiment of the present invention;

FIG. 5 depicts a flowchart that illustrates a method for storing a copyof the voicemail message, intended for the destination mobile device, onthe originating mobile device according to an embodiment of the presentinvention;

FIG. 6 depicts a flowchart that illustrates a method for displaying anindicator that a destination mobile device has played a voicemail leftby an originating mobile device according to an embodiment of thepresent invention;

FIG. 7 depicts a illustrative screen display, in accordance with anembodiment of the present invention, of an user interface displaying anidentifier of the outgoing call, an identifier for the outcome of thecall, and indicating whether the voicemail call outcomes have beenplayed by the destination mobile device;

FIG. 8 depicts a flowchart that illustrates a method for displaying anindicator on an originating mobile device that the destination mobiledevice has not responded with the preferred return call type accordingto an embodiment of the present invention; and

FIG. 9 depicts a flowchart that illustrates a method for displaying anindicator on the destination mobile device that the destination mobiledevice has not responded with the preferred return call type accordingto an embodiment of the present invention.

FIG. 10 depicts a flowchart that illustrates a method for displaying anindicator on the originating mobile device that has not contacted thedestination mobile device in a set period of time.

DETAILED DESCRIPTION

Throughout the description of the present invention, several acronymsand shorthand notations are used to aid the understanding of certainconcepts pertaining to the associated system and services. Theseacronyms and shorthand notations are solely intended for the purpose ofproviding an easy methodology of communicating the ideas expressedherein and are in no way meant to limit the scope of the presentinvention. The following is a list of these acronyms:

CD-ROM Compact Disk Read Only Memory DVD Digital Versatile Discs CDMACode Division Multiple Access EEPROM Electrically Erasable ProgrammableRead Only Memory GSM Global System for Mobile communications IEEEInstitute for Electrical and Electronics Engineers RAM Random AccessMemory ROM Read Only Memory

Further, various technical terms are used throughout this description.An illustrative resource that fleshes out various aspects of these termscan be found in Newton's Telecom Dictionary by H. Newton, 22^(nd)Edition (2006).

As one skilled in the art will appreciate, embodiments of the presentinvention may be embodied as, among other things: a method, system, orcomputer-program product. Accordingly, the embodiments may take the formof a hardware embodiment, a software embodiment, or an embodimentcombining software and hardware. In one embodiment, the presentinvention takes the form of a computer-program product that includescomputer-useable instructions embodied on one or more computer-readablemedia.

Computer-readable media include both volatile and nonvolatile media,removable and nonremovable media, and contemplate media readable by adatabase, a switch, and various other network devices. By way ofexample, and not limitation, computer-readable media comprise mediaimplemented in any method or technology for storing information.Examples of stored information include computer-useable instructions,data structures, program modules, and other data representations. Mediaexamples include, but are not limited to information-delivery media;RAM, ROM, EEPROM, flash memory or other memory technology; CD-ROM;digital versatile discs (DVD); holographic media or other optical discstorage, magnetic cassettes, magnetic tape, magnetic disk storage, andother magnetic storage devices. These technologies can store datamomentarily, temporarily, or permanently.

Illustrative aspects of the invention will be described in greaterdetail below. Listing some aspects should not be construed as anindication that other aspects do not exist. The following describecomputer-readable media having computer executable instructions,computer-implemented methods and computing systems.

Turing now to FIG. 1, an operating environment suitable for practicingan embodiment of the present invention is provided and referencedgenerally by the numeral 100. An originating mobile device may be amobile phone, personal data assistant, a smart phone, or any otherconsumer-electronics device that is capable of making and receivingtelephone calls by way of a mobile access network 112. The same can besaid for a destination mobile device 120. As illustratively shown,originating mobile device 110 includes a receiving component 116, autilizing component 116, and a displaying component 118 and a storingcomponent 126. It will be appreciated that there may be any number ofcomponents and that the components may reside on the network 112, theoriginating mobile device 110, or the destination mobile device 120.

Although other connections leading to the mobile access network 112 arenot shown, all embodiments of the present invention utilize wirelesscommunications networks including, but not limited to, Code DivisionMultiple Access (CDMA), Global System for Mobile communications (GSM),or Institute for Electrical and Electronics Engineers (IEEE) standard802.11. The originating mobile device communicates to the destinationmobile device 120 via a communications pathway 122. The communicationspathway could be defined by the CDMA, GSM, or IEEE standards bodies forvoice communications.

In some embodiments, voicemail server 124 is within the mobile accessnetwork 112. Voicemail server 124 may reside on the originating mobiledevice 110 or the destination mobile device 120. Locating the voicemailserver on the mobile devices (110, 120) allows for voicemail messages tobe saved directly on the originating mobile device 110.

The receiving component 114 receives data from mobile access network 112about an outgoing call responding to a call being connected, terminated,transferred, reset or busy. The data received by the mobile device couldinclude, but is not limited to, caller identifier, callee identifier,and call-state. This data may include data from the CDMA or GSMprotocols. The call-states may include call connected, call terminated,call transferred, call reset, or busy. A call transferred call-statecould be used to determine whether a voicemail server 124 was used inleaving a voicemail message. Another mechanism for determining whether avoicemail message is being left is to utilize sound recognition softwareto interpret the characteristic beep or tone of an answering machine orvoicemail server as indication of the call being transferred tovoicemail.

The utilizing component 116 determines the outcome of the call byprocessing data, such as caller identifier, callee identifier andcall-state information gathered from the mobile access network 112. Anindicator of the stored outcome of the call is displayed by thedisplaying component 118 to show an identifier identifying the outcomeof the call and an identifier identifying the outgoing call. The storingcomponent 126 stores the outcome of the call along with the callednumber for retrieval at a later time. For example, one day after thecall was placed the mobile user may want to know the outcome of thecall. Possible call outcomes that get displayed may include callconnected, call terminated, call transferred, call reset, or busy.

Turning now to FIG. 2 (and referencing FIG. 1 as well), a flowchartdepicting a method for displaying an indicator of the outcome of a callis generally referenced by the numeral 200. The devices and steps inFIG. 2 are similar to the devices previously discussed.

At step 210, an originating mobile device 110 receives data from amobile access network 112. The data can be gathered from the mobileaccess network 112 protocols, such as CDMA or GSM. At step 212, theoriginating mobile device 110 utilizes the data from the mobile accessnetwork 112 to determine the outcome of the outgoing call by parsingdata and interpreting codes received from the mobile access network 112.A few of the possible outcomes of the call would be connected,transferred to voicemail, no answer, and busy. At step 213, theoriginating mobile device 110 stores the data parsed from the mobileaccess network 112 in the storing component 126.

At step 214, the originating mobile device 110 displays an indicator ofthe outgoing call. Indicators used for identifying to whom the outgoingcall was made may include be a contact name, phone number, or anotheruser-defined indicator associated with the destination device. At step216, the origination mobile device 110 accessed the stored outcome ofthe call. An indicator of the outcome of the outgoing call is displayedadjacent to and simultaneously with the indicator identifying theoutgoing call.

Turning now to FIG. 3, an illustrative screen display of an interactiveelectronic graphical user interface on an outgoing originating mobiledevice showing an identifier for the calling device and an identifierfor the outcome of the call and is referenced generally by the numeral300. Generally, the exemplary user interface 300 comprises an outgoingcall list area 310 and a status area 320. The outgoing call list areadisplays an indicator of the outgoing call. The indicators of theoutgoing call can be shown as a name 330, a phone number 340, or otheruser-defined indicator of a destination device 120. These indicators maybe representations the user has stored in the originating mobiledevice's 110 contact application, such as pictures or icons that havebeen associated with a destination device.

The status area 320 comprises outgoing call indicators 350 identifyingthe outcome of a call from the originating mobile device 110 to adestination mobile device 120. These indicators are generated from thedata received from the mobile access network 112 at step 210. Therecould be several call-states displayed as the outcome of the outgoingcall, such as voicemail, no answer, connected, or busy, and thesecall-state may be represented by text, pictures, or icons as well.

Turning now to FIG. 4, an operating environment suitable for practicingan embodiment of the present invention is provided and referencedgenerally by the numeral 400. An originating mobile device 410 comprisesa call initiation component 412, a voicemail determining component 414,a recording component 416, and a storing component 418. It will beappreciated that there may be any number of components and that thecomponents may reside on the network 424, the originating mobile device410, or the destination mobile device 420. The call initiation component412 initiates a call from the originating mobile device 410 to adestination mobile device 420.

The originating mobile device 410 connects to the destination mobiledevice 420 via a communications pathway 422 that uses a mobile accessnetwork 424 for transport. The mobile access network 424 may be anywireless network, including but not limited to, CDMA, GSM, or IEEE802.11. Voicemail server 426 is depicted as residing on network 424;however, the voicemail server 426 is not limited to being within themobile access network 424 and may reside on the mobile devices 410 or420.

While the originating mobile device 410 is connected to the destinationmobile device 420, voicemail determining component 412 determineswhether the originating mobile device 410 is being prompted to leave avoicemail message for the destination mobile device 420. Thedetermination that is used by the originating mobile device 410 is beingprompted to leave a voicemail may included data from the networkindicating a transfer to voicemail, utilizing sound recognition softwareto interpret a characteristic beep or tone of a voicemail, anapplication recording device or answering machine. Another mechanismvoicemail determining component 414 may utilize is if the call from theoriginating mobile device 40 to the destination mobile device 420 istransferred or redirected.

Once the voicemail determining component 414 has determined that theoriginating mobile device 410 has been prompted to leave a voicemail,the originating mobile device 410 records the message being left by theuser of the originating mobile device 410 on the originating mobiledevice 410. The recorded voicemail message is a separate or additionalrecording of the voicemail message left for the destination mobiledevice 420. Thus the message is recorded for the destination mobiledevice 420. The recorded voicemail message is stored for retrieval bythe originating mobile device 410, and is the originating mobiledevice's record of the voicemail. The recorded voicemail message may bestored on the originating mobile device 410, or within the mobile accessnetwork 424. If stored on the mobile access network 424, the recordingmay be stored in the originating mobile device's personal voicemail.

Turing now to FIG. 5, a method 500 for storing a copy of a voicemailmessage, intended for the destination mobile device 420 on theoriginating mobile device 410 and is described.

At step 510, originating mobile device 410 initiates a call with thedestination mobile device 420. At step 512, the originating mobiledevice 410 is connects to destination mobile device 420. Once aconnection has been established between the mobile originating device410 and the destination mobile device 420.

At step 514, it is determined if the originating mobile device 410 isbeing prompted to leave a voicemail message for the destination mobiledevice 420. It will be appreciated that there may be any number ofcomponents that may perform step 514 and that the components may resideon the network 424, the originating mobile device 410, or thedestination mobile device 420. One such example would be to have theoriginating mobile device 410 listen for the voicemail prompt, such as abeep or tone. The voicemail determining component 414 would use theprompt to determine that a voicemail message is being left.

At step 516, the recording component 416 records the voicemail messageleft by the user of the originating mobile device 410 that is intendedfor the user of destination mobile device 420 while the originatingmobile device 410 and destination mobile device 420 are connected. Thevoicemail message recorded by the originating mobile device 410 is adifferent and separate recording from the voicemail message left for thedestination mobile device 420. This recording is done without userinteraction at the time of the call. The user does not have to pressanything to record the message left on the originating mobile device410, it is done automatically in response to the determination that avoicemail is to be left. At step 518 the voicemail message recorded bythe originating mobile device 410 is stored. The voicemail mail messagerecording may be stored directly on the originating mobile device 410,or on a voicemail server 426 of the originating mobile device 410. Thevoicemail recording may be played later by the user of the originatingmobile device 410. An indicator or icon may be provided to display theassociation between the recording left for the mobile destination mobiledevice, an outgoing call indicator, and the outcome of the outgoing callindicator.

Turning to FIG. 6, a method that illustrates displaying an indicatorthat a destination mobile device 120 has played a voicemail left by anoriginating mobile device 110 and is referenced generally as numeral600.

At step 610 the originating mobile device 110 receives data from themobile access network 112 about an outgoing call. The receivingcomponent 114 of the originating mobile device 110 may perform thisfunction. The data may be gathered from the mobile access network 112protocols, such as CDMA or GSM, which contains a call-state for theoutgoing call. Some examples of call-states may be connected, no answer,voicemail, or busy.

At step 612, the originating mobile device 110 utilizes the data fromthe mobile access network 112 to determine the outcome of the outgoingcall by parsing data and interpreting codes received from the mobileaccess network 112. The utilizing component 116 may determine of theoutcome of the outgoing call, but it will be appreciated that thedetermining step may be performed by any number of components and thatthe components may reside on the network 112, the originating mobiledevice 110, or the destination mobile device 120.

At step 618, the originating mobile device 110 receives a receiptmessage from the destination mobile device 120 that a voicemail messagewas played. The receipt message is associated with the voicemail messagethat was left by the originating mobile device 110 and would contain theinformation necessary to correlate the receipt message with the outgoingcall. At step 620, the receipt message is correlated with calleridentifier. Some parameters parsed from the mobile access network 112,and the receipt from mobile originating device 110 that may accomplishthe correlation of the receipt message may be the call outcome, thecaller identifier, the callee identifier, the day and time that thevoicemail message was received, and the day and time the voicemailmessage was played.

At step 622, indicators for the outgoing call, the outcome of theoutgoing call, and the voicemail message has been played are displayed.The indicator representing the outgoing call may be a name 716, a phonenumber 718, or a user-defined indicator. The indicator for the outcomeof the outgoing call may be the call-state of the outgoing call. Someexamples of the outcome of the outgoing call indicator would beconnected, no answer, voicemail, or busy. The indicator for displayingthat a voicemail message has been played shows the user of theoriginating mobile device 110 that the voicemail message left for thedestination mobile device 120 has been played.

Turning now to FIG. 7 an illustrative an interactive screen display of agraphical user interface showing an identifier for the calling device,an identifier for the outcome of the call, and whether the voicemailcall outcomes have been played by the destination mobile device 120 isprovided and generally referenced as numeral 700.

Generally, the exemplary user interface 700 comprises an outgoing calllist area 710, a status area 712, and a voicemail played area 714. Theoutgoing call list displays an indicator of the outgoing call. Theindicators of the outgoing call may be a name 716, a phone number 718,or any other user-defined indicator identifying the destination mobiledevice. One such example of a user-defined indicator would be athumbnail image. This thumbnail image could be retrieved from thecontact application on the originating mobile device 110. The statusarea 712 comprises indicators 720 identifying the outcome of theoutgoing call from the originating mobile device 110 to the destinationmobile device 120. There may be several different types of call outcomesfor the call. Some examples of outcome of the outgoing call types wouldbe connected, no answer, voicemail, or busy.

The outcome of the outgoing call types could be generated from datareceived from the mobile access network 112. The data from the mobileaccess network 112 provided to the originating mobile device 110 comesfrom the CDMA or GSM protocol that captures call-state.

The voicemail played area 714 is comprised of a played indicator 722that suggests that a voicemail has been played. The played indicator 722is triggered by the destination mobile device 120 playing the voicemailleft by the originating mobile device. The played indictor 722 iscorrelated to the outgoing call that ended in a voicemail message.

Turning now to FIG. 8, a flowchart illustrating displaying an indicatoron a destination mobile device 120 that the destination mobile device120 has not responded with the preferred return call type and isreferenced generally as numeral 800.

At step 810, a destination mobile device receives an instruction that avoicemail has been left by originating mobile device. At step 812, adata-set is associated with the voicemail message. The data-set maycontain a timestamp, a reply timestamp, and a preferred return calltype. It will be appreciated that there may be other information that ispart of the data set, such as a network identifier and an urgentpriority identifier. The timestamp indicates when the destination mobiledevice received the voicemail message from the originating mobiledevice, the reply time is when the user of the originating mobile devicewould like a response to the voicemail message, and the preferred returncall type is the call type on how the user wishes to respond to theoriginating mobile device. Examples of some preferred return call typeswould be, call, text message, voicemail, instant message, some or all ofthe call types.

At step 814, the user of the destination mobile device sets a replytimestamp. The reply time stamp allows for the originating mobile deviceuser to request a time for a response to be returned to them. Thistimestamp could be a day and time, or a relative time, such as one weekfrom today. At step 816, the reply timestamp expires, and thedestination mobile device checks for a response from the destinationmobile device that matches the preferred return call type. Thedestination mobile device could check its outgoing outboxes for phonecalls, text messages, or instant messages that match the preferredreturn call type and are from the destination mobile device.

At step 818, a indicator is displayed that tells the user that aresponse to the originating mobile device has not been made in thepreferred return call type and is past the time set in the replytimestamp. The display indicator could be a pop-up message, a flashingicon, or some other notification technique.

Turning now to FIG. 9 (and referencing FIG. 1), a flowchart thatillustrates displaying an indicator on the originating mobile devicethat the destination mobile device has not responded with the preferredreturn call type and is referenced generally as numeral 900.

At step 910, the originating mobile device associates a data-set with avoicemail message intended for a destination mobile device. The data-setcould contain a timestamp, a reply timestamp, and a preferred returncall type. These are not the only items that the data-set could contain.There may be other items such as a network identifier or priorityidentifier included within the data-set.

At step 912, the user sets a reply timestamp for a response by thedestination mobile device. The reply timestamp could be a day and time,or reflect a relative time, such as one week from today. Also, the usermay optionally set the preferred return call type. Setting this fieldallows the user of originating mobile device to choose how they wish tohave the user of the destination mobile device respond.

At step 914, the originating mobile device sends an instructioninforming the destination mobile device of the information in thedata-set. This instruction allows for the voicemail message to have anexpiration date and notification on the destination mobile device thatcorresponds to the wishes of the user of the originating mobile device.

At step 916, the reply timestamp set by the user of the originatingmobile device expires, and the originating mobile device checks its logfiles and inboxes for a response from the destination mobile device. Thechecking process is also looking for a response in the same type asindicated in the preferred return call type.

At step 918, an indicator is displayed to the user of the originatingmobile device that the destination mobile device has not responded withthe call type set in the preferred return call type. This indicatorcould be a pop-up indicator, a flashing icon, or other type ofnotification indicator.

Turning now to FIG. 10, a flowchart illustrating a computer-implementedmethod for displaying an indicator on the mobile originating device 110that a destination mobile device 120 has not been contacted within a settime period and is generally referenced as numeral 1000.

At step 1010, an originating mobile device receives a set time periodwhich is used to inform the user to contact the destination mobiledevice. The set time period may be received from a network 112 orentered by the user of the originating mobile device. If the set timeperiod is received by a network, information about the destinationmobile device could be captured and associated automatically to the settime period received. If the user of the originating mobile deviceenters a set time period manually, then the association of destinationmobile device information could be manually, capture from a call log, orselected from a contact list.

At step 1012, the set time period is stored on the originating mobiledevice in the storing component 126. As the set time period is stored,the mobile originating device will associate the set time period with adestination mobile device.

At step 1014, the originating mobile device determines whether it hascontacted the destination mobile device within the set time period. Theoriginating mobile device will keep track of the set time period asrelated to the current day and time of the device. When the set timeperiod has exceeded the current day and time of the device, theoriginating mobile device determines whether the destination mobiledevice has been contacted. One mechanism for determining if thedestination mobile device has been contacted is to use the call log ofthe originating mobile device and compare destination mobile deviceaddress and time stamps to the destination mobile device address and theset time period stored in the storing component 126.

At step 1016, the originating mobile device displays an indicator thatit has not contacted the destination mobile device within the set timeperiod. The indicator used to inform the originating mobile device usermay be a pop-up indicator containing text and icons.

Many different arrangements of the various components depicted, as wellas components not shown, are possible without departing from the spiritand scope of the present invention. Embodiments of the present inventionhave been described with the intent to be illustrative rather thanrestrictive. Alternative embodiments will become apparent to thoseskilled in the art that do not depart from its scope. A skilled artisanmay develop alternative means of implementing the aforementionedimprovements without departing from the scope of the present invention.

It will be understood that certain features and subcombinations are ofutility and may be employed without reference to other features andsubcombinations and are contemplated within the scope of the claims. Notall steps listed in the various figures need be carried out in thespecific order described.

1. One or more nontransitory computer-readable media having computer-useable instructions embodied thereon for performing a method of storing a voicemail message for retrieval by an originating mobile device, the method comprising: initiating at an originating mobile device an outgoing call to a destination mobile device; using a network server to connect the originating mobile device to the destination mobile device; determining at the originating mobile device whether a user of the originating mobile device is being prompted to leave content of a voicemail message; while the originating mobile device and destination mobile device are connected, recording the voicemail message content for the destination mobile device on the originating mobile device; storing the voicemail message content on the originating mobile device for retrieval wherein the voicemail message content includes an audio communication; storing voicemail message data on the originating device, wherein the voicemail message data includes at least one of a requested time period for reply to the audio communication or a set time period for the user to contact the destination mobile device; tracking at the originating mobile device a current day and time; determining at the originating mobile device whether the current day and time has exceeded the requested time period for reply, or the set time period for the user to contact the destination mobile device; and storing or displaying a result of the determination at the originating mobile device.
 2. The media of claim 1, wherein the method further comprises utilizing electronic sound recognition to determine that a tone or beep of an answering machine or a voicemail server to indicates that the user of the originating mobile device is being prompted to leave a voicemail message.
 3. The media of claim 1, wherein the method further comprises storing the voicemail message on a voicemail server.
 4. The media of claim 1, wherein the method further comprises notifying the user at the originating mobile device by displaying an indicator on a UI that is associated with the voicemail message data that the current day and time has exceeded the requested time period for reply, or the set time period for the user to contact the destination mobile device. 